//------------------------------------------------------------------------
//  Readme.txt
//------------------------------------------------------------------------
This project is configure to get you up and running quickly using 
CodeWarrior with the Freescale MCF52221 board.

This project provides full support for the selected board.
The created project provides Standard IO Support through console and terminal window.

Sample code for the following language:
- C


//------------------------------------------------------------------------
// Memory Maps
//------------------------------------------------------------------------
The Hardware has the following memory map:

# MCF52221 Derivative Memory map definitions from linker command files:
# __IPSBAR, __RAMBAR, __RAMBAR_SIZE, __FLASHBAR, __FLASHBAR_SIZE linker
# symbols must be defined in the linker command file.

# Memory Mapped Registers (IPSBAR= 0x40000000)
   ___IPSBAR         = 0x40000000;

# 16 Kbytes Internal SRAM
   ___RAMBAR         = 0x20000000;
   ___RAMBAR_SIZE    = 0x00004000;

# 128 KByte Internal Flash Memory
   ___FLASHBAR       = 0x00000000;
   ___FLASHBAR_SIZE  = 0x00020000;



//------------------------------------------------------------------------
// Project Structure
//------------------------------------------------------------------------
The project generated contains various files/groups:
- readme.txt: information for this project
- Sources: application source codes, user customizable startup 
  code, uart library, exception table
- Includes: derivative and board header files, ... 
- Libs: runtime and libs 
- Project Settings: linker command files for the different build 
  targets, the initialization and memory configuration files for 
  the hardware debugging, the common startup code, etc...
  
//------------------------------------------------------------------------
// Build Targets
//------------------------------------------------------------------------
- CONSOLE_INTERNAL_RAM:
This project target is setup to load and debug code from internal RAM.
It should be used during your application development.
The application outputs to the CodeWarrior's console window.

- INTERNAL_RAM:
This project target is setup to load and debug code from internal RAM.
It should be used during your application development.
This is the very basic project that outputs to the UART.
You needs to connect a Terminal Program to see the output.

- INTERNAL_FLASH:
This project target is setup to load and debug code in Internal FLASH.
This is the very basic project that outputs to the UART. User needs
to connect the terminal to see the output.



===================================================================
WARNING regarding debugging new project wizard code with CCS-SIM
===================================================================
The CCS-SIM is an instruction set simulator, it does not implement
any peripherals.
The new project generated by the wizard are using startup code 
performing some hardware peripheral initializations.
When debugging with the CCS-SIM  it might happen that the simulation
stuck on loop using non implemented peripheral register flag as 
condition (PLL initialization as example).  
In this case, you should either:
- move the PC to next statement
- use a skip point
- define a simulator specific macro which used when define allos you 
to comment out the unwanted code in order to debug with CCS-SIM
 

===================================================================
WARNING regarding code located in RAM
===================================================================
Many possible ColdFire target processors have an external bus, so 
you can use large external RAM devices for debugging applications 
during development. But some processors do not have an external 
bus, so you must accommodate applications in on-chip memory. 
Although this on-chip RAM accommodates this CodeWarrior project, 
it probably is too small for full development of your application. 
Accordingly, for a processor without external bus, you should locate 
your applications in flash memory. 

//------------------------------------------------------------------------
//  Flashing the code
//------------------------------------------------------------------------
1. Select the appropriate project target and build it
2. Make sure the correct remote connection is selected in the Remote 
   Connection debugger panel
3. In the CodeWarrior IDE menu, select Project > Set Default Project 
   and select your project
4. In the CodeWarrior IDE menu, select Project > Set Default Target 
   and select the project target that has the code you want to flash
5. In the CodeWarrior IDE menu, select Tools > Flash Programmer
6. Go to the flash programmer Target Configuration panel, click Load 
   Settings 
7. Browse to the <your project location>\cfg sub folder and
   select the flash settings xml file matching your build target 
8. Check that Use Custom Settings checkbox is not selected
9. Go to the Erase/Blank Check panel, select the All Sectors option and 
   click Erase
10. Go to Program/Verify panel, click Program
11. Your code should now be flashed

//------------------------------------------------------------------------
// Terminal Settings
//------------------------------------------------------------------------
In case the UART is supported, the terminal should be setup with:
- 19200 bauds,
- 8 data bits,
- no parity,
- 1 stop bit,
- no flow control.

Please check this file in the project.

//------------------------------------------------------------------------
//  Getting Started
//------------------------------------------------------------------------
To build/debug your project, use the CodeWarrior IDE menu Project > Debug 
or press F5. This will launch the debugger. Press again F5 in the 
debugger (or the CodeWarrior IDE menu Project > Run) to start the 
application. The CodeWarrior IDE menu Project > Break stops the 
application.

//------------------------------------------------------------------------
//  Adding your own code
//------------------------------------------------------------------------
Once everything is working as expected, you can begin adding your own code
to the project. Keep in mind that we provide this as an example of how to
get up and running quickly with CodeWarrior. There are certainly other
ways to handle interrupts and set up your linker command file. Feel free
to modify any of the source files provided.

//------------------------------------------------------------------------
//  Additional documentation
//------------------------------------------------------------------------
Read the online documentation provided. In CodeWarrior IDE menu, select
Help > CodeWarrior Help.

//------------------------------------------------------------------------
//  Contacting Freescale
//------------------------------------------------------------------------
For bug reports, technical questions, and suggestions, please use the
forms installed in the Release_Notes folder.
